package com.whfc.safety.dao;

import com.whfc.safety.dto.SafetyDangerExtDTO;
import com.whfc.safety.entity.SafetyDangerExt;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface SafetyDangerExtMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(SafetyDangerExt record);

    int insertSelective(SafetyDangerExt record);

    SafetyDangerExt selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(SafetyDangerExt record);

    int updateByPrimaryKey(SafetyDangerExt record);

    /**
     * 查询危大工程附加表
     *
     * @param dangerId
     * @param type
     * @return
     */
    List<SafetyDangerExtDTO> selectByDangerId(@Param("dangerId") Integer dangerId, @Param("type") Integer type);

    /**
     * 软删除
     *
     * @param dangerId
     */
    void delByDangerId(Integer dangerId);

    /**
     * 软删除
     *
     * @param extId
     * @param type
     */
    void delByIdAndType(@Param("extId") Integer extId, @Param("type") Integer type);

    /**
     * 统计本月检查总数
     *
     * @param deptId
     * @param startTime
     * @param endTime
     * @return
     */
    Integer selectCurCheckNumByDeptId(@Param("deptId") Integer deptId, @Param("startTime") Date startTime, @Param("endTime") Date endTime);

    /**
     * 统计检查数量
     *
     * @param dangerId
     * @return
     */
    Integer selectCheckNumByDangerId(Integer dangerId);
}